The present invention concerns communication between devices within a computing system and pertains particularly to management of resets for power failure and to hot swap devices connected through Small Computer Standard Interface (SCSI) buses to a dual SCSI bus controller.
In one category of network architectures, network devices are connected to a common communication bus. When one of the network devices desires to initiate a transfer of data over the bus, the network device will attempt to gain control of the bus. Once the network device has control of the bus, the transfer of data may be performed.
For example, the Small Computer Standard Interface (SCSI) is an input/output (I/O) interface connection used for personal computers. SCSI was originated as a disk memory interface and became a universal high speed I/O protocol. In communication bus systems which operate in accordance with the SCSI protocol, SCSI devices connected to a communication bus have a fixed network access priority. In the SCSI bus protocol, contention resolution is accomplished by granting bus control to the SCSI device which has the highest network access priority among the SCSI devices which, during an arbitration time period, request control of the communication bus.
Hardware implementation of a communication bus which uses the SCSI protocol is generally done using a 50 conductor flat ribbon or round bundle cable of characteristic impedance of 100 ohm. The nominal distance is six meters in single ended mode and 25 meters in differential mode. For more information on the SCSI protocol, see the American National Standard for SCSI-2, available as Document X3.131-199X from Global Engineering Documents, 2805 McGaw, Irvine, Calif. 92714.
It is necessary to perform a reset of a SCSI bus upon start-up, after a power failure, to remove devices from the SCSI bus and to add devices from the SCSI bus. However, when there are multiple controllers for a single SCSI bus, this requires coordination to determine which controller will oversee the SCSI bus reset.
In accordance with the preferred embodiment of the present invention, a device includes a first SCSI bus, a second SCSI bus, a first bus controller slot, a second bus controller slot and a bus controller in one of the first bus controller slot and the second bus controller slot. The bus controller includes reset circuitry for generating a SCSI bus reset signal. The SCSI bus reset signal being used to reset the first SCSI bus when the bus controller is in the first bus controller slot and the first SCSI bus is isolated from the second SCSI bus. The SCSI bus reset signal being used to reset the second SCSI bus when the bus controller is in the second bus controller slot and the first SCSI bus is isolated from the second SCSI bus. The SCSI bus reset signal is used to reset both the first SCSI bus and the second SCSI bus when the first SCSI bus and the second SCSI bus are bridged and one of the following conditions is met: the bus controller is in the first bus controller slot, or the bus controller is in the second bus controller slot and the first bus controller slot is empty.
For example, the device is a just a bunch of disks (JBOD) storage device. In the preferred embodiment, a first backplane connector connects the bus controller to the first SCSI bus. A second backplane connector connects the bus controller to the second SCSI bus. An isolator circuit is capable of electrically isolating the first backplane connector from the second backplane connector and is capable for connecting the first backplane connector to the second backplane connector. When the isolator circuit connects the first backplane connector to the second backplane connector this bridges the first SCSI bus and the second SCSI bus. When the bus controller is in the second bus controller slot and another bus controller is in the first bus controller, the second backplane connector isolator circuit isolates the first backplane connector from the second backplane connector. Additionally in the preferred embodiment, a first frontplane connector allows connection of the bus controller to a first host. A second frontplane connector allows connection of the bus controller to a second host.
The present invention provides for efficient reset of SCSI buses for power failure and for hot swapping of devices on SCSI networks.